package com.egao.common.module.recommendation.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.egao.common.core.web.JsonResult;
import com.egao.common.core.web.PageParam;
import com.egao.common.core.web.PageResult;
import com.egao.common.module.recommendation.entity.CivilServiceApplicationRecommendation;
import com.egao.common.module.recommendation.entity.vo.RecommendationAuditParam;
import com.egao.common.module.recommendation.entity.vo.RecommendationListVo;
import org.springframework.transaction.annotation.Transactional;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;


/**
 * 公务员考试报名推荐表（应届生版） 服务接口
 * @author shu
 */
public interface ICivilServiceApplicationRecommendationService extends IService<CivilServiceApplicationRecommendation> {

    /**
     * 查询公务员考试报名推荐表（应届生版）列表
     *
     * @param page
     * @return PageResult<CivilServiceApplicationRecommendation>
     */
    PageResult<RecommendationListVo> list(PageParam<CivilServiceApplicationRecommendation> page);

    /**
     * 根据id查询单个公务员考试报名推荐表（应届生版）信息
     * @param id 公务员考试报名推荐表（应届生版）id
     * @return JsonResult
     */
    JsonResult read(Integer id);

    /**
     * 个人展示记录
     *
     * @return JsonResult
     */
    JsonResult read();

    /**
     * 添加
     *
     * @param model 信息
     * @return JsonResult
     */
    JsonResult add(CivilServiceApplicationRecommendation model);

    /**
     * 修改
     *
     * @param model 信息
     * @return JsonResult
     */
    JsonResult saveUpdate(CivilServiceApplicationRecommendation model);
    /**
     * 根据ids删除公务员考试报名推荐表（应届生版）
     * @param ids 公务员考试报名推荐表（应届生版）ids
     * @return JsonResult
     */
    JsonResult delete(List<Integer> ids);

    /**
     * 提交
     * @param id//提交
     * @return JsonResult
     */
    JsonResult submit(Integer id);

    /**
     * 审核
     * @param model 信息
     * @return JsonResult
     */
    JsonResult audit(RecommendationAuditParam model);

    /**
     * 导出
     *
     * @param id
     * @param response
     */
    JsonResult export(Integer id, HttpServletResponse response) throws IOException;



}